草庐IT

linux - Dockerfile 与 docker-compose.yml

全部标签

docker - 转到 Docker 容器失败 : "Exit Code 1"

我正在尝试在Docker容器中运行我的Go应用程序,但它失败并给出错误退出代码1。该应用程序在我的本地机器上运行良好,但在Docker中运行不佳。下面是我的Dockerfile。FROMgolang:1.8asgoimageRUNgoget-ugithub.com/golang/dep/cmd/depCOPY.src/github.com/aditmayapada/tryoutWORKDIRsrc/github.com/aditmayapada/tryoutENVPORT9090RUNdepensureRUNCGO_ENABLED=0GOOS=linuxGOARCH=amd64gobu

docker - 从 Golang-Web 服务器控制 Docker

我正在寻找一种方法来从golang-webserver控制服务器上的docker-containers。到目前为止,我找到了“github.com/docker/docker/client”和“docker.io/go-docker”。我猜它们都做同样的事情,但它们都没有像样的文档或示例可供使用。有人对这些库有任何经验吗? 最佳答案 https://godoc.org/github.com/docker/docker/client文档对我来说看起来不错。有关更多示例,请查看我的项目https://github.com/loqutus

docker - Alpine docker 容器内的 dlv seg 故障

我在alpine:3.7.1容器中运行dlv。它因以下错误而崩溃:/#/dlv--listen=:40000--headless=true--api-version=2exec/serverCouldnotcreateconfigdirectory:user:Currentnotimplementedonlinux/amd64.panic:runtimeerror:invalidmemoryaddressornilpointerdereference[signalSIGSEGV:segmentationviolationcode=0x1addr=0x50pc=0x8c7dca]goro

带有 Go cli 项目的 Docker

我使用了以下按预期工作的docker文件该项目是一个cli,当我运行命令dockerrun-itcli我从cli中得到错误(这没关系,因为入口点正在运行fzrENTRYPOINT["./fzr”])通常我在我的机器上运行fzr-help或fzrversion等我希望当我使用像dockerrun-itcli这样的命令时,我将能够在容器内运行命令比如fzr-help和fzrversion,我该怎么做?FROMgolang:1.10.5ASbuild-envADDhttps://github.com/golang/dep/releases/download/v0.4.2/dep-linux-

docker - Golang Docker API : get events

我想通过golang集成从docker获取所有新事件。问题是它返回两个channel,我不知道如何订阅它们。cli,err:=client.NewClientWithOpts(client.WithVersion("1.37"))iferr!=nil{panic(err)}ctx,_:=context.WithCancel(context.Background())msg,err:= 最佳答案 有很多解决方案。解决方案可能是:msgs,errs:=cli.Events(ctx,types.EventsOptions{})for{se

go - 使用 os/exec 命令从 Windows 交叉编译到 Linux

标题基本上就是这么说的。我知道我能做到setGOOS=linuxsetGOARCH=amd64在gobuild之前在cmd中,但我正在尝试编写一个构建脚本并使用exec.Command完成所有操作。我的gobuild-oetc与exec.Command(它构建)一起工作,但是在执行以下任一命令后在测试脚本中打印GOOS时:cmd:=exec.Command("set","GOOS=linux")//ORcmd:=exec.Command("setGOOS=linux")我得到了windows。有什么想法吗?谢谢! 最佳答案 我强烈建

go - 从 dockerize golang 模板中的文件内容设置变量

我想在dockerize中使用jsonQuery语法解析traefik的acme.json并为另一个服务中的TLS设置发出证书/key文件。jsonQuery接受一个字符串,该示例将其作为环境变量{{.Env.myJson}}如何获取文件的字符串内容:{{with$myJsonContent:=}}#extractkeytofile{{end}} 最佳答案 Go的text/template本身并不支持。它lookslikedockerize工具providesacoupleofextensionfunctions但他们也不允许这样做

git - 在 dockerfile 中的 go build 命令中注入(inject)或插入多个 ENV 变量

我正在使用dockerfile来构建go代码,并且我试图在-ldflags选项中传递3个选项。其中两个标志来自ENV变量,我必须通过字符串插值或连接将它们注入(inject)-ldflags内容,但我不知道如何。目标是在main.go的两个变量中注入(inject)gitrevisionhash和当前时间戳可以通过creatingafilefromdockerfile来完成使用“echo”命令,但我想确保使用简单的变量插值/连接是不可能的ENVGIT_REVISION$(gitrev-parse--shortHEAD)ENVCOMPILATION_TIMESTAMP$(date+%Y%

docker - 为什么 "go build"对我的 Docker 项目失败?

我有一个npm二进制文件,我想打包到Docker容器中。我有这样的配置:#DockerimagefortheMongoStitchcommandFROMgolang:alpine#DoasystemupdateRUNapkupdateRUNapkaddgit#DeclarebasedirWORKDIR/root#TheconsolebinaryforMongoStitchRUNgitclonehttps://github.com/10gen/stitch-cli.gitWORKDIR/root/stitch-cliRUNgobuildCMD["/bin/sh"]我收到这个错误:main

docker-compose up 不构建

我正在尝试使用docker-compose构建和运行golang应用程序。这是我的设置:./docker/Dockerfile./main.goMakefile生成文件compose:envGOOS=linuxGOARCH=amd64GOARM=7gobuildcddocker&&docker-composeup./docker/DockerfileFROMgolang:1.11COPYapp.CMD["./app"]./docker/docker-compose.ymlversion:'3'services:app:build:context:../dockerfile:./dock